home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / IDLIncludes / Patches.idl < prev    next >
Text File  |  1996-05-01  |  3KB  |  112 lines

  1. /*
  2.      File:        Patches.idl
  3.  
  4.      Contains:    Patch Manager Interfaces.
  5.  
  6.      Version:    Technology:    System 8
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. */
  18. #ifndef __PATCHES_IDL__
  19. #define __PATCHES_IDL__
  20.  
  21. #include <somobj.idl>
  22. #include <somcls.idl>
  23.  
  24. #ifndef __TYPES_IDL__
  25. #include <Types.idl>
  26. #endif
  27. #ifndef __KERNEL_IDL__
  28. #include <Kernel.idl>
  29. #endif
  30. #ifndef __ORDEREDITEMS_IDL__
  31. #include <OrderedItems.idl>
  32. #endif
  33.  
  34. #ifdef __SOMIDL__
  35.  
  36. #if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
  37. typedef SignedByte                TrapType;
  38.  
  39. /*
  40.     GetTrapAddress and SetTrapAddress are obsolete and should not
  41.     be used. Always use NGetTrapAddress and NSetTrapAddress instead.
  42.     The old routines will not be supported for PowerPC apps.
  43. */
  44. #if OLDROUTINENAMES && !GENERATINGCFM
  45. #endif
  46. #if GENERATINGPOWERPC
  47. #endif
  48. /*
  49.  
  50. // Moved here from StdCLib
  51. pascal Boolean TrapAvailable (UInt16 trapNumber);
  52.  
  53. */
  54. #endif
  55. /* FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED*/
  56. #if FOR_SYSTEM8_PREEMPTIVE
  57. typedef OpaquePtr                PatchID;
  58.  
  59. typedef OpaquePtr                PatchChainID;
  60.  
  61. typedef OpaquePtr                PatchableProcPtr;            /* Substituted OpaquePtr for ``void*'' */
  62.  
  63. typedef OptionBits                PatchOptions;
  64.  
  65. typedef OrderedItemName            PatchName;
  66.  
  67. typedef OpaquePtr                PatchNamePtr;                /* Substituted OpaquePtr for ``PatchName*'' */
  68.  
  69. typedef OrderRequirements        PatchOrderRequirements;
  70.  
  71. typedef OpaquePtr                PatchOrderRequirementsPtr;    /* Substituted OpaquePtr for ``PatchOrderRequirements*'' */
  72.  
  73. typedef SOMLargeStruct            PatchDescription;            /* Derived from a struct of 56 bytes in size */
  74.  
  75. typedef OpaquePtr                PatchDescriptionPtr;        /* Substituted OpaquePtr for ``PatchDescription*'' */
  76.  
  77. typedef OptionBits                PatchHeaderOptions;
  78.  
  79. typedef SOMLargeStruct            PatchHeader;                /* Derived from a struct of 20 bytes in size */
  80.  
  81. typedef SOMLargeStruct            PatchInformation;            /* Derived from a struct of 40 bytes in size */
  82.  
  83. typedef OpaquePtr                PatchInformationPtr;        /* Substituted OpaquePtr for ``PatchInformation*'' */
  84.  
  85. typedef SOMLargeStruct            PatchChainInformation;        /* Derived from a struct of 8 bytes in size */
  86.  
  87. typedef OpaquePtr                PatchChainInformationPtr;    /* Substituted OpaquePtr for ``PatchChainInformation*'' */
  88.  
  89. /*
  90.  *    Maps a ProcPtr to a PatchChainID.
  91.  *        If the ProcPtr is a patch,                     return noErr and Chain
  92.  *        If the ProcPtr is a root,                     return noErr and Chain 
  93.  *        If the ProcPtr is not a patch or a root,     return an error
  94. */
  95. /*
  96.  *    Maps a ProcPtr to a PatchID.
  97.  *        If the ProcPtr is a patch,                     return noErr and the PatchID
  98.  *        If the ProcPtr is a root,                     return notAPatchErr
  99.  *        If the ProcPtr is not a patch or a root,     return notAPatchErr
  100. */
  101. /*
  102.  *    Iteration functions:
  103.  *        Get all the chains in a KernelProcess, and
  104.  *        Get all the patches in a chain
  105. */
  106. #endif
  107.  
  108. #endif /* __SOMIDL__ */
  109.  
  110. #endif /* __PATCHES_IDL__ */
  111.  
  112.